#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# @Date : 2024/3/27 13:56
# @Author : water
# @Description : 元组的基本操作

"""
元组：
    Python 的元组与列表类似，不同之处在于元组的元素不能修改。
    元组使用小括号 ( )，列表使用方括号 [ ]。
    元组创建很简单，只需要在括号中添加元素，并使用逗号隔开即可。
    元组与字符串类似，下标索引从 0 开始，可以进行截取，组合等
访问元组
    元组可以使用下标索引来访问元组中的值
修改元组
    元组中的元素值是不允许修改的，但我们可以对元组进行连接组合
删除元组
    元组中的元素值是不允许删除的，但我们可以使用del语句来删除整个元组
元组运算符
    与字符串一样，元组之间可以使用 +、+=和 * 号进行运算。这就意味着他们可以组合和复制，运算后会生成一个新的元组
元组索引，截取
    因为元组也是一个序列，所以我们可以访问元组中的指定位置的元素，也可以截取索引中的一段元素
关于元组是不可变的
    所谓元组的不可变指的是元组所指向的内存中的内容不可变。
"""

# 创建元组
tup1 = (1, 2, 3, 4, 5)
print(tup1, type(tup1))
# 创建空元组
tup2 = ()
# 元组中只包含一个元素时，需要在元素后面添加逗号 , ，否则括号会被当作运算符使用
tup3 = (9,)
tup4 = (9)  # 不带“,”创建一个整数对象
print(type(tup3), type(tup4))

# 访问元组，元组索引
print(tup1[2], tup1[2:], tup1[2:-1])

# 修改元组
print(tup1 + tup3)

# 删除元组
del tup3
# print(tup3)  # 元组被删除后，输出变量会有异常信息

# 获取元组的内存地址
print(id(tup1))